1
Esencia de la Ciencia de la Computación: algoritmos, programación y el poder de la abstracción
AI028Lesson 1
00:00

La esencia de la Ciencia de la Computación no consiste en estudiar las computadoras en sí mismas, sino en investigar“la resolución de problemas (Problem Solving)”como ciencia. Es un arte sobre cómo transformar el caos complejo del mundo real en pasos lógicos precisos.

n (entrada)sqrt()√n (salida)Figura 1-1 Abstracción de proceso: perspectiva de caja negra

Tres pilares fundamentales

  • Algoritmo (Algorithm)es el alma para resolver problemas. Es un proceso con pasos finitos que determina si un problema escomputable (Computable).
  • Programación (Programming)es el proceso de traducir un algoritmo a un lenguaje que una computadora puede entender (por ejemplo, Python). Es el puente entre la abstracción lógica y la implementación física.
  • Abstracción procedural (Procedural Abstraction)es el arma definitiva para gestionar la complejidad. Al encapsular los detalles de implementación dentro de una 'caja negra', los programadores pueden centrarse solo en 'qué hacer' sin preocuparse por 'cómo hacerlo'.
Usuario (User)Interfaz (Interface)ImplementaciónOperaciónFigura 1-2 Estructura jerárquica de abstracción
Filosofía de la caja negra para programadores
Cuando llamas al método math.sqrt(16) no necesitas saber si se usa el método de Newton o búsqueda binaria en el fondo. Esta capacidad de 'ignorar detalles innecesarios' es clave para construir sistemas de software a gran escala. Esto también representa la idea básica detipos de datos abstractos (ADT) la noción inicial: separar completamente la representación lógica de los datos de su implementación física.